home *** CD-ROM | disk | FTP | other *** search
/ MacWorld 1999 January - Disc 2 / Macworld (1999-01) (Disk 2).dmg / Serious Demos / Symbolic Composer 4.2 / Environment / Projects / Tutorial Material / Zone Tutorial / Structure Examples / 3. Triox < prev    next >
Lisp/Scheme  |  1998-10-26  |  2KB  |  92 lines

  1. ; Movement IV - OUT FROM THE EDGE for violin, sax and 
  2. ; electric piano - part 2
  3. ; - using a symbol pattern to create 'zone' metres.
  4.  
  5. (setq mat1 (gen-noise-brownian 9 0.4 0.4))
  6. (setq mat2 (gen-noise-brownian 7 0.4 0.4))
  7. (setq mat3 (gen-noise-brownian 5 0.4 0.4))
  8.  
  9. (setq zone1a (vector-round 192 384 mat3))
  10. (setq zone1 (vector-to-list (vector-quantize 5 16 zone1a)))
  11.  
  12. (setq vel1 (vector-to-list (vector-round 32 120 mat1)))
  13.  
  14. (setq ptch1 (vector-to-symbol a o mat1))
  15. (setq ptch2 (vector-to-symbol a j mat2))
  16. (setq ptch3 (vector-to-symbol a e mat3))
  17.  
  18. (create-tonality sumscale1 '(1 2 4 7 12 8 9 6 4 11))
  19. (create-tonality sumscale2 '(1 2 5 9 4 3 9 2 1))
  20. (create-tonality sumscale3 '(1 2 6 11 8 10 9 10))
  21.  
  22. (setq tonal
  23.   (symbols-to-tonality
  24.     symbol ptch3
  25.     transpose '((0 1 2 3 4 5 6 7 8 9)
  26.                 (0 1 2 3 4 5 6 7 8)
  27.                 (0 1 2 3 4 5 6 7))
  28.      mapping (activate-tonality 
  29.                  (sumscale1 c 3) (sumscale2 c 3) (sumscale3 c 3))
  30.   )
  31. )
  32.  
  33. (setq tonal1
  34.   (symbols-to-tonality
  35.      symbol ptch3
  36.      transpose '((0 1 2 3 4 5 6 7 8 9)
  37.                  (0 1 2 3 4 5 6 7 8)
  38.                  (0 1 2 3 4 5 6 7))
  39.      mapping (activate-tonality 
  40.                  (sumscale1 c 4) (sumscale2 c 4) (sumscale3 c 4))
  41.   )
  42. )
  43.  
  44. (setq tonal2
  45.   (symbols-to-tonality
  46.      symbol ptch3
  47.      transpose '((0 1 2 3 4 5 6 7 8 9)
  48.                  (0 1 2 3 4 5 6 7 8)
  49.                  (0 1 2 3 4 5 6 7))
  50.      mapping (activate-tonality 
  51.                  (sumscale1 c 5) (sumscale2 c 5) (sumscale3 c 5))
  52.   )
  53. )
  54.  
  55. (def-symbol 
  56.   piano (find-change ptch1)
  57.   sax (find-change ptch3)
  58.   violin (find-change ptch2)
  59. )
  60.  
  61. (def-length 
  62.   piano '(1/8)
  63.   sax '(1/8)
  64.   violin '(1/8)
  65. )
  66.  
  67. (def-velocity 
  68.   piano vel1
  69.   sax vel1
  70.   violin vel1
  71. )
  72.  
  73. (def-zone 
  74.   piano zone1
  75.   sax zone1
  76.   violin zone1
  77. )
  78.  
  79. (def-tonality 
  80.   piano tonal
  81.   sax tonal1
  82.   violin tonal2
  83. )
  84.  
  85. (compile-instrument-p "ccl;output:"  "trio"
  86.   piano
  87.   sax
  88.   violin
  89. )
  90.  
  91.  
  92.